#include <iostream>

using i64 = long long;

constexpr int N = 1E6 + 5;

i64 que[N], hh, tt;

int main() {
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);

    int n;
    std::cin >> n;

    int op, x;
    while (n--) {
        std::cin >> op;
        if (op == 1) {
            std::cin >> x;
            que[tt++] = x;
        } else if (op == 2) {
            if (hh == tt) {
                std::cout << "ERR_CANNOT_POP\n";
            } else {
                que[hh++];
            }
        } else if (op == 3) {
            if (hh == tt) {
                std::cout << "ERR_CANNOT_QUERY\n";
            } else {
                std::cout << que[hh] << "\n";
            }
        } else {
            std::cout << tt - hh << "\n";
        }
        // std::cout << " ---------\n";
    }

    return 0;
}